package org.jeecg.modules.param.fault.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.List;

@Data
@TableName("bike_fault_submit")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="上报故障+照片对象", description="上报故障+照片对象")
public class SubmitFile {
    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private java.lang.String id;
    /**网点编号*/
    @Excel(name = "网点编号", width = 15)
    @ApiModelProperty(value = "网点编号")
    private String stationCode;
    /**网点名称*/
    @Excel(name = "网点名称", width = 15)
    @ApiModelProperty(value = "网点名称")
    private String stationName;
    /**车桩编号*/
    @Excel(name = "车桩编号", width = 15)
    @ApiModelProperty(value = "车桩编号")
    private java.lang.String pileCode;
    /**车辆*/
    @Excel(name = "车辆编号", width = 15)
    @ApiModelProperty(value = "车辆编号")
    private java.lang.String vehicleCode;
    /**车辆*/
    @Excel(name = "车辆类型", width = 15,dicCode = "bike_type")
    @ApiModelProperty(value = "车辆类型")
    @Dict(dicCode = "bike_type")
    private java.lang.String vehicleType;
    /**用户编码*/
    @Excel(name = "会员号", width = 15)
    @ApiModelProperty(value = "会员号")
    private java.lang.String userCode;
    /**上报人员类型(1用户2保洁3维修4调度)*/
    @Excel(name = "人员类型", width = 15, dicCode = "submit_user_type")
    @Dict(dicCode = "submit_user_type")
    @ApiModelProperty(value = "上报人员类型(1用户2保洁3维修4调度)")
    private java.lang.String userType;
    @Excel(name = "上报时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "上报时间")
    private java.util.Date createTime;
    /**是否派单*/
    @Excel(name = "是否转工单", width = 15, dicCode = "yn")
    @Dict(dicCode = "yn")
    @ApiModelProperty(value = "是否转工单 1是 0否")
    private java.lang.String isDispatch;
    /**故障类型(1还不了车2租不了车3网络故障4车辆损坏5车锁故障6需要保洁7其他问题)*/
    @Excel(name = "故障类型", width = 15, dicCode = "fault_type")
    @Dict(dicCode = "fault_type")
    @ApiModelProperty(value = "故障类型(1还不了车2租不了车3网络故障4车辆损坏5车锁故障6需要保洁7其他问题)")
    private java.lang.String faultType;
    /**问题描述*/
    @Excel(name = "问题描述", width = 15)
    @ApiModelProperty(value = "问题描述")
    private java.lang.String content;
    /**转工单时间*/
    @Excel(name = "转工单时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "转工单时间")
    private java.util.Date dispatchTime;

    /**文件路径*/
    //@Excel(name = "图片", width = 15,type = 2)
    @ApiModelProperty(value = "文件路径")
    private java.lang.String fileUrl;
    /**故障号*/
    //@Excel(name = "故障编号", width = 15)
    @ApiModelProperty(value = "故障编号")
    private java.lang.String code;
    /**所属网点*/
    //@Excel(name = "所属网点", width = 15)
    @ApiModelProperty(value = "所属网点")
    private java.lang.String stationId;


    /**网点地址*/
    //@Excel(name = "网点地址", width = 15)
    @ApiModelProperty(value = "网点地址")
    private String stationAddress;

    /**所属车桩*/
    //@Excel(name = "车桩ID", width = 15)
    @ApiModelProperty(value = "车桩ID")
    private java.lang.String pileId;


    /**车辆*/
    //@Excel(name = "车辆ID", width = 15)
    @ApiModelProperty(value = "车辆ID")
    private java.lang.String vehicleId;




    /**会员ID*/
    //@Excel(name = "用户ID", width = 15)
    @ApiModelProperty(value = "用户ID")
    private java.lang.String userId;

    /**会员姓名*/
    //@Excel(name = "会员姓名", width = 15)
    @ApiModelProperty(value = "会员姓名")
    private java.lang.String userName;





    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
    /**创建时间*/


    /**修改人*/
    @ApiModelProperty(value = "修改人")
    private java.lang.String updateBy;
    /**修改时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "修改时间")
    private java.util.Date updateTime;
    /**备注*/
    //@Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private java.lang.String memo;

    ///**上报故障主键*/
    //@Excel(name = "上报故障主键", width = 15)
    //@ApiModelProperty(value = "上报故障主键")
    //private java.lang.String faultId;


    /**是否必须上传照片 1是 0否"*/
    //@Excel(name = "是否必须上传照片", width = 15)
    @ApiModelProperty(value = "是否必须上传照片 1是 0否")
    @Dict(dicCode = "yn")
    private java.lang.String isPicture;
    /**责任人ID*/
    //@Excel(name = "责任人ID", width = 15)
    @ApiModelProperty(value = "责任人ID")
    private java.lang.String userDutyId;
    //@Excel(name = "责任人", width = 15)
    //@ApiModelProperty(value = "责任人")
    //@TableField(exist = false)
    //private java.lang.String userName;

    /**截至完成时间*/
    //@Excel(name = "截至完成时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "截至完成时间")
    private java.util.Date finishTime;
    /**紧急程度 2 一般 1加急	*/
    //@Excel(name = "紧急程度", width = 15)
    @ApiModelProperty(value = "紧急程度 2 一般 1加急")
    @Dict(dicCode = "urgent_type")
    private java.lang.String urgentType;
    @TableField(exist = false)
    private List<String> stationArray;
}
